package kioscodeal

import java.io.Serializable
import java.util.Date
import groovy.time.TimeCategory
import groovy.time.TimeDuration

class User implements Serializable {

	String login
	String password
	String nombre
	Role role = Role.USER
	String apellido
	Date fechaNacimiento
	String calle
	Integer numeroDireccion
	Integer piso
	Integer numeroDepartamento
	Integer codigoPostal
	Integer dni
	Integer telefonoFijo = 5555555
	Integer telefonoMovil = 1555555555
	String mail
	EstadoCliente estado = EstadoCliente.ACTIVO//Para saber si esta activo o no - si confirmo mail => esta activo.
	Integer edad // TODO : este atributo no se debe persistir (NO OLVIDARLO)
	Double minimoCompra = 0
	
    static constraints = {
		login blank: false,unique:true
		password blank: false
		role nullable:false
		nombre blank: false,unique:'dni'
		apellido blank: false,unique:'dni'
		calle blank: false
		numeroDireccion blank: false
		dni blank: false,unique:true
		telefonoFijo validator: {fono,instance -> !instance.telefonoMovil.equals('') || !instance.telefonoFijo.equals('')}
		mail blank: false,unique:true,email: true
		minimoCompra scale:2,min:0D
    }
}
